package com.dwj.auto.comment.service;

import com.dwj.auto.comment.common.response.PageResponse;
import com.dwj.auto.comment.common.response.Response;
import com.dwj.auto.comment.dao.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dwj.auto.comment.model.form.UserForm;
import com.dwj.auto.comment.model.form.UserLoginForm;
import com.dwj.auto.comment.model.req.UserCriteria;
import com.dwj.auto.comment.model.vo.UserVo;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author dwjian
 * @since 2020-01-09
 */
public interface IUserService extends IService<User> {

    Response<User> login(UserLoginForm form);

    PageResponse<UserVo> getList(UserCriteria criteria);

    Response<String> edit(UserForm form);

    Response<UserVo> getByToken(String token);

    Response<User> getByUsername(String username);

    Response<Boolean> resetPassword(String userId, String newPassword);
}
